This workshop provides an introduction to how compilers represent code, and perform the necessary checks for correctness, leading to a better understanding of the inner workings of your language of choice.
The workshop is practical in nature; you'll learn by implementing parts and pieces of several type checkers yourself.
The workshop introduces increasingly complex concepts and algorithms. A roughly agenda is:
Skeleton implementations shall be provided in Kotlin and Haskell, but the attendee is more than welcome to use their favorite language.
50% of the proceeds of this workshop will be donated to a NGO.